package com.zhouheng.module.controller;

import com.zhouheng.common.constant.MenuConstants;
import com.zhouheng.module.dao.SysRoleMapper;
import com.zhouheng.module.entity.SysRole;
import org.springframework.security.access.annotation.Secured;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

/**
 * 用户角色控制层
 * 跳过了server层，以及简单的参数校验
 *
 * @author 周恒
 * @date 20180831 16:28:52
 * @since v1.0
 */
@Secured({MenuConstants.ROLE_MANAGEMENT})
@RestController
@RequestMapping("/role")
public class SysRoleController {

    private SysRoleMapper sysRoleMapper;

    public SysRoleController(SysRoleMapper sysRoleMapper) {
        this.sysRoleMapper = sysRoleMapper;
    }

    /**
     * 获取所有角色
     *
     * @return 返回 map 描述此返回参数
     * @author 周恒
     * @date 20180831 16:29:58
     * @since v1.0
     */
    @GetMapping("/queryAll")
    public List<SysRole> queryAll() {
        return sysRoleMapper.findAll();
    }

    /**
     * 根据角色id获取信息
     *
     * @param roleId 描述此参数
     * @return 返回 user 描述此返回参数
     * @author 周恒
     * @date 20180903 17:42:28
     * @since v1.0
     */
    @GetMapping("/queryByRoleId")
    public SysRole queryByRoleId(Integer roleId) {
        return sysRoleMapper.selectByPrimaryKey(roleId);
    }

}
